#include <iostream>
#include <algorithm>
#include <vector>
#include <functional>
#include <boost/bind.hpp>
#include <boost/shared_ptr.hpp>

using namespace std;
class A{};
class B{char b;};
class C{char b;int b2;};
class D{char b;int f();};
class E{char b;virtual int f();};

int main(int atrgc, char** argv)
{
	cout<<"short  -> "<<sizeof(int)<<endl;
	cout<<"int    -> "<<sizeof(int)<<endl;
	cout<<"float  -> "<<sizeof(float)<<endl;
	cout<<"double -> "<<sizeof(double)<<endl;
	cout<<"char   -> "<<sizeof(char)<<endl;
	cout<<"empty class   -> "<<sizeof(A)<<endl;
	cout<<"class B -> "<<sizeof(B)<<endl;
	cout<<"class B2 -> "<<sizeof(C)<<endl;
	cout<<"class D -> "<<sizeof(D)<<endl;
	cout<<"class E -> "<<sizeof(E)<<endl;
	return 0;
}
